/**
 * @description 组件样式
 * @author: 陈陈
 * @date: 2025/05/09
 * @phone: 18560000860
 * @email: 18560000860@qq.com
 * @company: 济南晨霜信息技术有限公司 /
 * @business: 承接前后端项目的开发
 */
.pure-textarea {
	background: var(--pure-textarea-background, var(--pure-background-light));
	border-radius: var(--pure-textarea-border-radius, var(--pure-radius-default));
	border: var(
		--pure-textarea-border,
		var(--pure-textarea-border-width, 0) var(--pure-textarea-border-style, solid)
			var(--pure-textarea-border-color, var(--pure-border-color-deep))
	);
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--pure-textarea-gap, 8px);
	transition: 0.3s;
	width: var(--pure-textarea-width, 100%);
	height: var(--pure-textarea-height, 200px);
	max-height: var(--pure-textarea-max-height, 500px);

	&__textarea {
		width: 100%;
		flex: 1;
		font-size: inherit;
		border: none;
		outline: none;
		font-family: inherit;
		overflow: hidden auto;
		padding: var(--pure-textarea-padding, 12px);
		min-height: var(--pure-textarea-min-height, 4em);
		background: transparent;
	}

	&__footer {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: var(--pure-textarea-footer-justify-content, flex-end);
		gap: var(--pure-textarea-footer-gap);
		font-size: var(--pure-textarea-footer-font-size, var(--pure-font-size-small));
		font-weight: var(--pure-textarea-footer-font-weight);
		color: var(--pure-textarea-footer-color, var(--pure-text-color-regular));
		padding: var(--pure-textarea-footer-padding, 0 12px 12px 12px);

		&__gap-line {
			width: 1px;
			height: var(--pure-textarea-footer-gap-line-height, 0.75em);
			background: var(--pure-textarea-footer-gap-line-color, currentColor);
			margin: var(--pure-textarea-footer-gap-line-margin, 0 8px);
			opacity: var(--pure-textarea-footer-gap-line-opacity, 0.5);
		}
	}

	&__total {
		font-size: var(--pure-textarea-total-font-size, inherit);
		font-weight: var(--pure-textarea-total-font-weight, inherit);
		color: var(--pure-textarea-total-color, inherit);
		margin: var(--pure-textarea-total-margin);
		padding: var(--pure-textarea-total-padding);
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: var(--pure-textarea-total-gap, 3px);

		&__separator {
			font-size: var(--pure-textarea-total-separator-font-size, var(--pure-font-size-small));
			font-weight: var(--pure-textarea-total-separator-font-weight, inherit);
			color: var(--pure-textarea-total-separator-color, inherit);
			margin: var(--pure-textarea-total-separator-margin);
			padding: var(--pure-textarea-total-separator-padding);
		}
	}

	&__clear {
		font-size: var(--pure-textarea-clear-font-size, inherit);
		font-weight: var(--pure-textarea-clear-font-weight, inherit);
		color: var(--pure-textarea-clear-color, inherit);
		margin: var(--pure-textarea-clear-margin);
		padding: var(--pure-textarea-clear-padding);
	}

	&--auto-height {
		height: var(--pure-textarea-height, auto);
	}

	&--disabled {
		background: var(
			--pure-textarea-disabled-background,
			var(--pure-textarea-background, var(--pure-background-light))
		);
		color: var(--pure-textarea-disabled-color, inherit);
		opacity: var(--pure-textarea-disabled-opacity, var(--pure-opacity-disabled));
		pointer-events: none;
	}

	&--readonly {
		pointer-events: none;
	}

	&:focus-within {
		&.pure-textarea--focus-type {
			&--border-all {
				border: var(
					--pure-textarea-focus-border,
					var(--pure-textarea-focus-border-width, 1px) var(--pure-textarea-focus-border-style, solid)
						var(--pure-textarea-focus-border-color, var(--pure-theme-primary))
				);
			}

			&--border-bottom {
				border-bottom: var(
					--pure-textarea-focus-border-bottom,
					var(--pure-textarea-focus-border-width, 1px) var(--pure-textarea-focus-border-style, solid)
						var(--pure-textarea-focus-border-color, var(--pure-theme-primary))
				);
			}
		}
	}
}
